﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Volo.Abp.Application.Dtos;

namespace Acme.BookStore.PurchaseDto.NotificationOrder
{
    public class NotificationOrderDto:AuditedEntityDto<Guid>
    {
        /// <summary>
        /// 通知单号（主键场景：若需自增或其他约束，结合 ORM 配置）
        /// </summary>
        public string NotificationOrderNo { get; set; }

        /// <summary>
        /// 客户编码
        /// </summary>
        public string CustomerCode { get; set; }

        /// <summary>
        /// 客户名称
        /// </summary>
        public string CustomerName { get; set; }

        /// <summary>
        /// 通知单状态（可枚举：如 待收货、已完成 等，需结合业务扩展）
        /// </summary>
        public string NotificationStatus { get; set; }

        /// <summary>
        /// 商品编码
        /// </summary>
        public string ProductCode { get; set; }

        /// <summary>
        /// 商品名称
        /// </summary>
        public string ProductName { get; set; }

        /// <summary>
        /// 通知单数量
        /// </summary>
        public decimal NotificationQty { get; set; }

        /// <summary>
        /// 验收数量
        /// </summary>
        public decimal ReceivedQty { get; set; }

        /// <summary>
        /// 单位（如：个、箱）
        /// </summary>
        public string Unit { get; set; }

        /// <summary>
        /// 体积 CM3
        /// </summary>
        public decimal VolumeCm3 { get; set; }

        /// <summary>
        /// 重量 KG
        /// </summary>
        public decimal WeightKg { get; set; }

        /// <summary>
        /// 客户订单号
        /// </summary>
        public string CustomerOrderNo { get; set; }

        /// <summary>
        /// 基本单位数量
        /// </summary>
        public decimal BaseUnitQty { get; set; }

        /// <summary>
        /// 基本单位（如：PCS）
        /// </summary>
        public string BaseUnit { get; set; }

        /// <summary>
        /// 生产日期
        /// </summary>
        public DateTime ProductionDate { get; set; }
    }
}
